package com.yxw.live_vod_boot.service;

import com.yxw.live_vod_boot.dto.VideoLikeDTO;
import com.yxw.live_vod_boot.dto.VideoLikeListQueryDTO;
import com.yxw.live_vod_boot.dto.VodLikeAndCollectDto;
import com.yxw.live_vod_boot.vo.OnDemandVideoVo;
import com.yxw.live_vod_boot.vo.VodLikeAndCollectVo;
import com.yxw.yxnet_cd_center.common.dto.PageVO;
import com.yxw.yxnet_cd_center.common.utils.BaseResult;

/**
 * 点播点赞管理
 * @author liuxin
 * @date 2023.11.24
 */
public interface OnDemandLikeService {

    /**
     * 视频点赞
     * @param dto
     */
    void doVideoLike(VideoLikeDTO dto);


    /**
     * 查询当前用户是否对当前视频点赞和当前视频总点赞量
     * @param dto
     */
    BaseResult getVideoLikeInfo(VideoLikeDTO dto);

    /**
     * 点播点赞信息从redis添加到数据库
     * @return
     */
    void addLikeRecord();

    /**
     * 展示当前用户点赞视频列表
     */
    PageVO<OnDemandVideoVo> getVideoLikeListByUserId(VideoLikeListQueryDTO dto);


    /**
     * 查询店铺视频点赞和收藏列表
     * @param shopId
     * @return
     */
    PageVO<VodLikeAndCollectVo> getVodLikeAndCollectList(VodLikeAndCollectDto dto);
}
